
using System;

namespace Camalon.ColorPicker 
{
	// This class stores all relevant HSB data.
	internal struct HSB 
	{
		// private data fields
		private int _hue;
		private int _saturation;
		private int _brightness;

		/// <summary>
		/// Constructor. Provides initial values for the coordinates in the
		/// HSB color space.
		/// </summary>
		/// <param name="hue">The hue coordinate.</param>
		/// <param name="saturation">The saturation coordinate.</param>
		/// <param name="brightness">The brightness coordinate.</param>
		public HSB( int hue, int saturation, int brightness ) 
		{
			
			_hue = hue;
			_saturation = saturation;
			_brightness = brightness;

		}
		

		/// <summary>
		/// Gets or sets the hue coordinate.
		/// </summary>
		public int Hue 
		{
			get { return _hue; }
		}

		/// <summary>
		/// Gets or sets the saturation coordinate.
		/// </summary>
		public int Saturation 
		{
			get { return _saturation; }
		}

		/// <summary>
		/// Gets or sets the brightness coordinate.
		/// </summary>
		public int Brightness 
		{
			get { return _brightness; }
		}

		public  bool IsEqual( HSB hsb ) 
		{
			return 
			this._hue			== hsb._hue && 
			this._saturation	== hsb._saturation && 
			this._brightness	== hsb._brightness;
		}


	} // HSB

} 
